  /**
   * Generate time : 2016-10-13 11:04:39
   * Version : 1.0.1.V20070717
   */
package com.baosight.sczx.zm.cg.domain;

import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;

import com.baosight.iplat4j.core.ei.EiColumn;
import com.baosight.iplat4j.ep.DaoEPBase;
import com.baosight.iplat4j.util.NumberUtils;
import com.baosight.iplat4j.util.StringUtils;
/**
 * ZMCGProduceStatis 
 * table comment : 公司生产实绩统计 
 */
public class ZMCGProduceStatis extends DaoEPBase {

	private String fdKeyId = " ";		/* 主键*/
	private String fdCurrentDate = " ";		/* 当前日期*/
	private String fdVirtualDate = " ";		/* 调度日期*/
	private String fdReportDepartmentId = " ";		/* 汇报部门ID*/
	private String fdReportDepartment = " ";		/* 汇报部门*/
	private String fdReporterId = " ";		/* 汇报人ID*/
	private String fdReporter = " ";		/* 汇报人*/
	private String fdProjectName = " ";		/* 项目名称*/
	private String fdDepartmentName = " ";		/* 单位名称*/
	private String fdStatus = " ";		/* 状态*/
	private BigDecimal fdDayPlan = new BigDecimal("0");		/* 当日计划*/
	private BigDecimal fdDayActual = new BigDecimal("0");		/* 当日实绩*/
	private BigDecimal fdDayDif = new BigDecimal("0");		/* 当日超欠*/
	private BigDecimal fdMonthDif = new BigDecimal("0");		/* 月超欠*/
	private BigDecimal fdMonthPlan = new BigDecimal("0");		/* 月计划*/
	private BigDecimal fdMonthActual = new BigDecimal("0");		/* 月实绩*/
	private BigDecimal fdYearPlan = new BigDecimal("0");		/* 年计划*/
	private BigDecimal fdYearComplate = new BigDecimal("0");		/* 年完成百分比*/
	private BigDecimal fdYearTotal = new BigDecimal("0");		/* 年累计*/
	private BigDecimal fdYearDif = new BigDecimal("0");		/* 年累计超欠*/
	private BigDecimal fdYearTb = new BigDecimal("0");		/* 去年同比*/

	/**
	 * initialize the metadata 
	 */
	public void initMetaData() {
		EiColumn eiColumn;
		
	eiColumn = new EiColumn("fdKeyId");
	eiColumn.setPrimaryKey(true);
	eiColumn.setFieldLength(32);	
	eiColumn.setDescName("主键");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdCurrentDate");
	eiColumn.setFieldLength(10);	
	eiColumn.setDescName("当前日期");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdVirtualDate");
	eiColumn.setFieldLength(10);	
	eiColumn.setDescName("调度日期");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdReportDepartmentId");
	eiColumn.setFieldLength(32);	
	eiColumn.setDescName("汇报部门ID");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdReportDepartment");
	eiColumn.setFieldLength(50);	
	eiColumn.setDescName("汇报部门");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdReporterId");
	eiColumn.setFieldLength(32);	
	eiColumn.setDescName("汇报人ID");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdReporter");
	eiColumn.setFieldLength(20);	
	eiColumn.setDescName("汇报人");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdProjectName");
	eiColumn.setFieldLength(100);	
	eiColumn.setDescName("项目名称");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdDepartmentName");
	eiColumn.setFieldLength(32);	
	eiColumn.setDescName("单位名称");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdStatus");
	eiColumn.setFieldLength(10);	
	eiColumn.setDescName("状态");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdDayPlan");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("当日计划");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdDayActual");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("当日实绩");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdDayDif");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("当日超欠");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdMonthDif");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("月超欠");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdMonthPlan");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("月计划");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdMonthActual");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("月实绩");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdYearPlan");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("年计划");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdYearComplate");
	eiColumn.setType("N");
	eiColumn.setScaleLength(2);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("年完成百分比");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdYearTotal");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("年累计");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdYearDif");
	eiColumn.setType("N");
	eiColumn.setScaleLength(1);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("年累计超欠");
	eiMetadata.addMeta(eiColumn);
	
	eiColumn = new EiColumn("fdYearTb");
	eiColumn.setType("N");
	eiColumn.setScaleLength(2);
	eiColumn.setFieldLength(20);
	eiColumn.setDescName("去年同比");
	eiMetadata.addMeta(eiColumn);
	

	}
	/**
	 * the constructor
	 */
	public ZMCGProduceStatis() {
		initMetaData();
	}
	
	/**
	 * get the fdKeyId - 主键
	 * @return the fdKeyId
	 */
	public String getFdKeyId() {
		return this.fdKeyId;
	}
	
	/**
	 * set the fdKeyId - 主键
	 */
	public void setFdKeyId(String fdKeyId) {
		this.fdKeyId = fdKeyId;
	}
	
	/**
	 * get the fdCurrentDate - 当前日期
	 * @return the fdCurrentDate
	 */
	public String getFdCurrentDate() {
		return this.fdCurrentDate;
	}
	
	/**
	 * set the fdCurrentDate - 当前日期
	 */
	public void setFdCurrentDate(String fdCurrentDate) {
		this.fdCurrentDate = fdCurrentDate;
	}
	
	/**
	 * get the fdVirtualDate - 调度日期
	 * @return the fdVirtualDate
	 */
	public String getFdVirtualDate() {
		return this.fdVirtualDate;
	}
	
	/**
	 * set the fdVirtualDate - 调度日期
	 */
	public void setFdVirtualDate(String fdVirtualDate) {
		this.fdVirtualDate = fdVirtualDate;
	}
	
	/**
	 * get the fdReportDepartmentId - 汇报部门ID
	 * @return the fdReportDepartmentId
	 */
	public String getFdReportDepartmentId() {
		return this.fdReportDepartmentId;
	}
	
	/**
	 * set the fdReportDepartmentId - 汇报部门ID
	 */
	public void setFdReportDepartmentId(String fdReportDepartmentId) {
		this.fdReportDepartmentId = fdReportDepartmentId;
	}
	
	/**
	 * get the fdReportDepartment - 汇报部门
	 * @return the fdReportDepartment
	 */
	public String getFdReportDepartment() {
		return this.fdReportDepartment;
	}
	
	/**
	 * set the fdReportDepartment - 汇报部门
	 */
	public void setFdReportDepartment(String fdReportDepartment) {
		this.fdReportDepartment = fdReportDepartment;
	}
	
	/**
	 * get the fdReporterId - 汇报人ID
	 * @return the fdReporterId
	 */
	public String getFdReporterId() {
		return this.fdReporterId;
	}
	
	/**
	 * set the fdReporterId - 汇报人ID
	 */
	public void setFdReporterId(String fdReporterId) {
		this.fdReporterId = fdReporterId;
	}
	
	/**
	 * get the fdReporter - 汇报人
	 * @return the fdReporter
	 */
	public String getFdReporter() {
		return this.fdReporter;
	}
	
	/**
	 * set the fdReporter - 汇报人
	 */
	public void setFdReporter(String fdReporter) {
		this.fdReporter = fdReporter;
	}
	
	/**
	 * get the fdProjectName - 项目名称
	 * @return the fdProjectName
	 */
	public String getFdProjectName() {
		return this.fdProjectName;
	}
	
	/**
	 * set the fdProjectName - 项目名称
	 */
	public void setFdProjectName(String fdProjectName) {
		this.fdProjectName = fdProjectName;
	}
	
	/**
	 * get the fdDepartmentName - 单位名称
	 * @return the fdDepartmentName
	 */
	public String getFdDepartmentName() {
		return this.fdDepartmentName;
	}
	
	/**
	 * set the fdDepartmentName - 单位名称
	 */
	public void setFdDepartmentName(String fdDepartmentName) {
		this.fdDepartmentName = fdDepartmentName;
	}
	
	/**
	 * get the fdStatus - 状态
	 * @return the fdStatus
	 */
	public String getFdStatus() {
		return this.fdStatus;
	}
	
	/**
	 * set the fdStatus - 状态
	 */
	public void setFdStatus(String fdStatus) {
		this.fdStatus = fdStatus;
	}
	
	/**
	 * get the fdDayPlan - 当日计划
	 * @return the fdDayPlan
	 */
	public BigDecimal getFdDayPlan() {
		return this.fdDayPlan;
	}
	
	/**
	 * set the fdDayPlan - 当日计划
	 */
	public void setFdDayPlan(BigDecimal fdDayPlan) {
		this.fdDayPlan = fdDayPlan;
	}
	
	/**
	 * get the fdDayActual - 当日实绩
	 * @return the fdDayActual
	 */
	public BigDecimal getFdDayActual() {
		return this.fdDayActual;
	}
	
	/**
	 * set the fdDayActual - 当日实绩
	 */
	public void setFdDayActual(BigDecimal fdDayActual) {
		this.fdDayActual = fdDayActual;
	}
	
	/**
	 * get the fdDayDif - 当日超欠
	 * @return the fdDayDif
	 */
	public BigDecimal getFdDayDif() {
		return this.fdDayDif;
	}
	
	/**
	 * set the fdDayDif - 当日超欠
	 */
	public void setFdDayDif(BigDecimal fdDayDif) {
		this.fdDayDif = fdDayDif;
	}
	
	/**
	 * get the fdMonthDif - 月超欠
	 * @return the fdMonthDif
	 */
	public BigDecimal getFdMonthDif() {
		return this.fdMonthDif;
	}
	
	/**
	 * set the fdMonthDif - 月超欠
	 */
	public void setFdMonthDif(BigDecimal fdMonthDif) {
		this.fdMonthDif = fdMonthDif;
	}
	
	/**
	 * get the fdMonthPlan - 月计划
	 * @return the fdMonthPlan
	 */
	public BigDecimal getFdMonthPlan() {
		return this.fdMonthPlan;
	}
	
	/**
	 * set the fdMonthPlan - 月计划
	 */
	public void setFdMonthPlan(BigDecimal fdMonthPlan) {
		this.fdMonthPlan = fdMonthPlan;
	}
	
	/**
	 * get the fdMonthActual - 月实绩
	 * @return the fdMonthActual
	 */
	public BigDecimal getFdMonthActual() {
		return this.fdMonthActual;
	}
	
	/**
	 * set the fdMonthActual - 月实绩
	 */
	public void setFdMonthActual(BigDecimal fdMonthActual) {
		this.fdMonthActual = fdMonthActual;
	}
	
	/**
	 * get the fdYearPlan - 年计划
	 * @return the fdYearPlan
	 */
	public BigDecimal getFdYearPlan() {
		return this.fdYearPlan;
	}
	
	/**
	 * set the fdYearPlan - 年计划
	 */
	public void setFdYearPlan(BigDecimal fdYearPlan) {
		this.fdYearPlan = fdYearPlan;
	}
	
	/**
	 * get the fdYearComplate - 年完成百分比
	 * @return the fdYearComplate
	 */
	public BigDecimal getFdYearComplate() {
		return this.fdYearComplate;
	}
	
	/**
	 * set the fdYearComplate - 年完成百分比
	 */
	public void setFdYearComplate(BigDecimal fdYearComplate) {
		this.fdYearComplate = fdYearComplate;
	}
	
	/**
	 * get the fdYearTotal - 年累计
	 * @return the fdYearTotal
	 */
	public BigDecimal getFdYearTotal() {
		return this.fdYearTotal;
	}
	
	/**
	 * set the fdYearTotal - 年累计
	 */
	public void setFdYearTotal(BigDecimal fdYearTotal) {
		this.fdYearTotal = fdYearTotal;
	}
	
	/**
	 * get the fdYearDif - 年累计超欠
	 * @return the fdYearDif
	 */
	public BigDecimal getFdYearDif() {
		return this.fdYearDif;
	}
	
	/**
	 * set the fdYearDif - 年累计超欠
	 */
	public void setFdYearDif(BigDecimal fdYearDif) {
		this.fdYearDif = fdYearDif;
	}
	
	/**
	 * get the fdYearTb - 去年同比
	 * @return the fdYearTb
	 */
	public BigDecimal getFdYearTb() {
		return this.fdYearTb;
	}
	
	/**
	 * set the fdYearTb - 去年同比
	 */
	public void setFdYearTb(BigDecimal fdYearTb) {
		this.fdYearTb = fdYearTb;
	}
	
	/**
	 * get the value from Map
	 */
	public void fromMap(Map map) {
	
		setFdKeyId(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdKeyId")), fdKeyId));
		setFdCurrentDate(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdCurrentDate")), fdCurrentDate));
		setFdVirtualDate(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdVirtualDate")), fdVirtualDate));
		setFdReportDepartmentId(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdReportDepartmentId")), fdReportDepartmentId));
		setFdReportDepartment(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdReportDepartment")), fdReportDepartment));
		setFdReporterId(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdReporterId")), fdReporterId));
		setFdReporter(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdReporter")), fdReporter));
		setFdProjectName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdProjectName")), fdProjectName));
		setFdDepartmentName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdDepartmentName")), fdDepartmentName));
		setFdStatus(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("fdStatus")), fdStatus));
		setFdDayPlan(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdDayPlan")), fdDayPlan));
		setFdDayActual(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdDayActual")), fdDayActual));
		setFdDayDif(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdDayDif")), fdDayDif));
		setFdMonthDif(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdMonthDif")), fdMonthDif));
		setFdMonthPlan(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdMonthPlan")), fdMonthPlan));
		setFdMonthActual(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdMonthActual")), fdMonthActual));
		setFdYearPlan(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdYearPlan")), fdYearPlan));
		setFdYearComplate(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdYearComplate")), fdYearComplate));
		setFdYearTotal(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdYearTotal")), fdYearTotal));
		setFdYearDif(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdYearDif")), fdYearDif));
		setFdYearTb(NumberUtils.toBigDecimal(StringUtils.toString(map.get("fdYearTb")), fdYearTb));
	}
	
	/**
	 * set the value to Map
	 */
	public Map toMap() {
		
		Map map = new HashMap();
			map.put("fdKeyId",StringUtils.toString(fdKeyId, eiMetadata.getMeta("fdKeyId")));	
			map.put("fdCurrentDate",StringUtils.toString(fdCurrentDate, eiMetadata.getMeta("fdCurrentDate")));	
			map.put("fdVirtualDate",StringUtils.toString(fdVirtualDate, eiMetadata.getMeta("fdVirtualDate")));	
			map.put("fdReportDepartmentId",StringUtils.toString(fdReportDepartmentId, eiMetadata.getMeta("fdReportDepartmentId")));	
			map.put("fdReportDepartment",StringUtils.toString(fdReportDepartment, eiMetadata.getMeta("fdReportDepartment")));	
			map.put("fdReporterId",StringUtils.toString(fdReporterId, eiMetadata.getMeta("fdReporterId")));	
			map.put("fdReporter",StringUtils.toString(fdReporter, eiMetadata.getMeta("fdReporter")));	
			map.put("fdProjectName",StringUtils.toString(fdProjectName, eiMetadata.getMeta("fdProjectName")));	
			map.put("fdDepartmentName",StringUtils.toString(fdDepartmentName, eiMetadata.getMeta("fdDepartmentName")));	
			map.put("fdStatus",StringUtils.toString(fdStatus, eiMetadata.getMeta("fdStatus")));	
			map.put("fdDayPlan",StringUtils.toString(fdDayPlan, eiMetadata.getMeta("fdDayPlan")));	
			map.put("fdDayActual",StringUtils.toString(fdDayActual, eiMetadata.getMeta("fdDayActual")));	
			map.put("fdDayDif",StringUtils.toString(fdDayDif, eiMetadata.getMeta("fdDayDif")));	
			map.put("fdMonthDif",StringUtils.toString(fdMonthDif, eiMetadata.getMeta("fdMonthDif")));	
			map.put("fdMonthPlan",StringUtils.toString(fdMonthPlan, eiMetadata.getMeta("fdMonthPlan")));	
			map.put("fdMonthActual",StringUtils.toString(fdMonthActual, eiMetadata.getMeta("fdMonthActual")));	
			map.put("fdYearPlan",StringUtils.toString(fdYearPlan, eiMetadata.getMeta("fdYearPlan")));	
			map.put("fdYearComplate",StringUtils.toString(fdYearComplate, eiMetadata.getMeta("fdYearComplate")));	
			map.put("fdYearTotal",StringUtils.toString(fdYearTotal, eiMetadata.getMeta("fdYearTotal")));	
			map.put("fdYearDif",StringUtils.toString(fdYearDif, eiMetadata.getMeta("fdYearDif")));	
			map.put("fdYearTb",StringUtils.toString(fdYearTb, eiMetadata.getMeta("fdYearTb")));	
			
		return map;
	
	}
}